Surface-Contact Ethernet Connector, Network Equipment Chassis Including the Same and Operating Method Thereof

ABSTRACT

A system and method includes stacking a first network node and a second network node on each other, making a surface contact between the network nodes using a first surface connector disposed on an upper surface of a first chassis of the first network node and a second surface connector on a lower surface of the second network node, directly connecting one of the first network node and the second network node to a computer network, and controlling another of the first network node and the second network node to connect the computer network through the surface contact made using the first surface connector and the second surface connector.

CROSS-REFERENCE TO RELATED APPLICATION

This application is a continuation application of, and claims priorityto U.S. patent application Ser. No. 16/401,800, filed on May 2, 2019,now U.S. Pat. No. 10,862,252 issued on Dec. 8, 2020, which claims thebenefit of U.S. Provisional Application No. 62/666,894, filed May 4,2018, the entire contents of which are incorporated herein by reference.

TECHNICAL FIELD

This application relates to network nodes that can be stacked andsurface-contacted on each other using surface-contact connectors, and amethod for operating the network nodes.

BACKGROUND

In big data analysis, as compared to the extensive progress in thesoftware area, hardware has yet to sufficiently be developed. Forexample, modem software such as ‘Hadoop’ is designed to run on multipleservers. However, traditional servers are relatively big and costthousand dollars and use a lot of energy, so big data is a significantchallenge to most midsized firms.

There is a need for an effective hardware solution with a simpleconfiguration providing better computing power for less money, lessenergy, and less space.

More particularly, given to the fact that the conventional wired networkconnectors such as RJ45 connectors are prone to break, and the cablearrangement become complicated when a large number of servers areconnected by these conventional connectors, new connection methodsaddressing the above issues are needed.

SUMMARY OF THE INVENTION

Aspects of the present disclosure are directed to surface-contactconnectors, a system using the surface-contact connectors, and method ofoperating the system.

In an aspect of the present disclosure, there is provided a networknode. The network node includes a first surface connector configured toprovide an electrical connection at least one of data or power system.

In another aspect of the present disclosure, there is provided a systemincluding a network node and another network node having a same physicalconfiguration as the network node. The network node and the anothernetwork node are stacked on each other. The network node is incommunication with the another network node through a surface contactbetween the network node and the another network node.

In still another aspect of the present disclosure, there is provided adata processing system. The data processing system includes a managementsystem, a master network node, and at least one slave network node. Themanagement system is configured to receive an update request for a newconfiguration of the data processing system and notify a master networknode that the new configuration of the data processing network system isavailable. The master network node is configured to receive the newconfiguration from the management system upon receipt of thenotification, acquire a new cell configuration and a new frameworkconfiguration from the new configuration, update a cell configurationand a framework configuration with the new cell configuration and thenew framework configuration, and notify at least one slave network nodethat the new configuration is available. The at least one slave networknode is configured to receive the new configuration from the masternetwork node upon receipt of the notification, acquire a new cellconfiguration and a new framework configuration from the newconfiguration, and apply the new cell configuration and the newframework configuration.

In still another aspect of the present disclosure, there is provided amethod for operating a data processing system. The method includes:receiving, by a management system, an update request for a newconfiguration of the data processing system; notifying, by themanagement system, a master network node that the new configuration ofthe data processing network system is available; receiving, by themaster network node, the new configuration from the management systemupon receipt of the notification; acquiring, by the master network node,a new cell configuration and a new framework configuration from the newconfiguration; updating, by the master network node, a cellconfiguration and a framework configuration with the new cellconfiguration and the new framework configuration; notifying, by themaster network node, the at least one slave network node that the newconfiguration is available; receiving, by the at least one slave networknode, the new configuration from the master network node upon receipt ofthe notification; acquiring, by the at least one slave network node, anew cell configuration and a new framework configuration from the newconfiguration; and applying, by the at least one slave network node, thenew cell configuration and the new framework configuration.

BRIEF DESCRIPTION OF THE DRAWINGS

The present disclosure will become more readily apparent from thespecific description accompanied by the drawings.

FIG. 1 depicts standard Ethernet plug and port according to prior art;

FIG. 2A depicts a top perspective view of an example network nodeaccording to an exemplary embodiment of the present disclosure;

FIG. 2B depicts an Ethernet surface connector at the top of the networknode of FIG. 2A;

FIG. 2C depicts a bottom perspective view of the network node of FIG.2A;

FIG. 2D depicts an Ethernet surface connector at the bottom of thenetwork node of FIG. 2A;

FIG. 2E depicts a rear perspective view of the network node of FIG. 2A;

FIG. 3A depicts an example scenario where the network node of FIG. 2A isstacked on another network node according to an exemplary embodiment ofthe present disclosure;

FIG. 3B depicts a sectional view of two stacked network nodes when takenalong with A-A′, according to an exemplary embodiment of the presentapplication;

FIG. 4A depicts a block diagram of an example network node according toan exemplary embodiment of the present disclosure;

FIG. 4B is a view illustrating an example configuration of stackedmultiple network nodes in communication with each other according to anexemplary embodiment of the present disclosure;

FIG. 5A depicts a block diagram of an example network node according toan exemplary embodiment of the present disclosure;

FIG. 5B is a view illustrating an example configuration of stackedmultiple network nodes in communication with each other according to anexemplary embodiment of the present disclosure;

FIG. 6A is a view illustrating multiple network nodes stacked where acap unit is used to cover a top network node according to an exemplaryembodiment of the present disclosure;

FIG. 6B is a view illustrating multiple network nodes stacked where abase unit is used to cover a bottom network node according to anexemplary embodiment of the present disclosure;

FIG. 7 is a view illustrating an example modified RJ45 plug according toan exemplary embodiment of the present disclosure;

FIG. 8 is an exploded view illustrating two example modified RJ45 plugsbeing connected by the surface contact according to an exemplaryembodiment of the present disclosure;

FIG. 9 depicts an example data processing system using network cells(nodes) according to an exemplary embodiment of the present disclosure;

FIG. 10 is a view of an example system configuration according to anexemplary embodiment of the present disclosure;

FIGS. 11, 12A-12D and 13A-13E depict flow charts of a method forupdating the system with new system configuration or new cell imageaccording to an exemplary embodiment of the present disclosure;

FIGS. 14A and 14B depict flow charts of a method for reimaging a localcell according to an exemplary embodiment of the present disclosure; and

FIG. 15 is a block diagram of a computing system according to anexemplary embodiment of the present disclosure.

DETAILED DESCRIPTION

The present disclosure may be understood more readily by reference tothe following detailed description of the disclosure taken in connectionwith the accompanying drawing figures, which form a part of thisdisclosure. It is to be understood that this disclosure is not limitedto the specific devices, methods, conditions or parameters describedand/or shown herein, and that the terminology used herein is for thepurpose of describing particular embodiments by way of example only andis not intended to be limiting of the claimed disclosure.

Also, as used in the specification and including the appended claims,the singular forms “a,” “an,” and “the” include the plural, andreference to a particular numerical value includes at least thatparticular value, unless the context clearly dictates otherwise. Rangesmay be expressed herein as from “about” or “approximately” oneparticular value and/or to “about” or “approximately” another particularvalue. When such a range is expressed, another embodiment includes fromthe one particular value and/or to the other particular value.

The phrases “at least one”, “one or more”, and “and/or” are open-endedexpressions that are both conjunctive and disjunctive in operation. Forexample, each of the expressions “at least one of A, B and C”, “at leastone of A, B, or C”, “one or more of A, B, and C”, “one or more of A, B,or C” and “A, B, and/or C” means A alone, B alone, C alone, A and Btogether, A and C together, B and C together, or A, B and C together.

The term “(network) node” can be interchangeable with “computing node ordevice”, “(network) cell”, or etc. The network node can be understood tomean any piece of network equipment or devices that are connected to acomputer network.

Examples of the network node include servers, personal computers,system-on-chips, modems, routers, packet sniffers, firewalls and othernetwork security devices, network attached storage (NAS) devices,printers and other networked peripherals, etc.

Each network node may include, but are not limited: a computing server,a communication interface with a connector, and a chassis incorporatingthe server and the communication interface.

The term “builder” can be understood as “builder node or cell”, “masternode or cell”, etc. The term “worker” can be understood as “worker nodeor cell”, “slave node or cell”, etc.

Exemplary embodiments of the present disclosure provide a networkconnector that uses a surface contact, rather than an insertion of atabbed plug into a port. Magnets are formed in each surface networkconnector to pull it into contact and to reject an improper connection.Moreover, by incorporating the aforementioned surface contact connectorsinto a network node, multiple pieces of network nodes may be simplystacked to establish a network connection for each stacked piece ofnode.

For the sake of description, the present disclosure will be describedwith reference to an Ethernet connector as only an example of thenetwork connector upon provided to each network node, however the scopeor exemplary embodiments of the present disclosure are not limitedthereto.

For example, in the present disclosure, it should be understood thatnetwork node(s) are in communication with each other or externalnetwork, in a wired or wireless manner, using a communication methodother than Ethernet.

Thus, the terms “Ethernet (surface) connector”, “RJ45 connector”,“modified RJ45 connector”, or the like, are only examples of the networkconnector.

In addition, the term “plug” refers to a cable or “male” end of anetwork connection while the term “port” refers to a “jack”, “socket”,“receptable” or “female” end.

In the present disclosure, network nodes use a standard communication(or network) connector for an Ethernet connection. For example,referring to FIG. 1, each network node incorporates a typical Ethernetconnector port, e.g., RJ45 port 10 b to which an RJ45 plug 10 a havingeight pins 120 and one locking tab 11 a on a reserves side is inserted,as shown in FIG. 1, so that the RJ45 plug 10 a can be plugged into theRJ45 port 10 b to provide an electrical connection between the networknodes. The locking tab 110 a of the RJ45 plug 10 a can engage with acorresponding receptacle/slot 110 b of the RJ45 port 10 b, as shown inFIG. 1.

However, as this means of connection is tedious and prone to breaking,exemplary embodiments of the present disclosure use surface Ethernetcontacts to receive an Ethernet connection. Each surface Ethernetcontact may have a set of N (e.g., N=8) exposed pins that areapproximately flush with the tops of two bar magnets disposed atopposite sides of the N pins, which will be described with reference toFIGS. 2A to 2C.

FIG. 2A depicts a top perspective view of an example network node 20according to an exemplary embodiment of the present disclosure. FIG. 2Bdepicts an Ethernet surface connector at the top of the network node 20according to an exemplary embodiment of the present disclosure. FIG. 2Cdepicts a bottom perspective view of the network node 20. FIG. 2Ddepicts an Ethernet surface connector at the bottom of the network node20 according to an exemplary embodiment of the present disclosure. FIG.2E depicts a rear perspective view of the network node 20 according toanother exemplary embodiment of the present disclosure. FIG. 3A depictsan example scenario where one network node 20 is stacked on anothernetwork node 20′ according to an exemplary embodiment of the presentdisclosure. FIG. 3B depicts a sectional view of two stacked networknodes when taken along with A-A′, according to an exemplary embodimentof the present application.

Referring now to FIGS. 2A-2D, a network node 20 includes an Ethernetsurface connector 210 a on a top surface thereof (see FIG. 2A) andanother Ethernet surface connector 210 b on a bottom surface thereof(see FIG. 2C). Referring further to FIG. 3A, another network node 20′ onwhich the network node 20 is stacked has substantially the sameconfiguration and/or physical shape as the network node 20, so that thenetwork node 20′ includes an Ethernet surface connector 210 a on a topsurface thereof and another Ethernet surface connector 210 b on a bottomsurface thereof. Although not shown, additional network node(s) eachhaving substantially the same configuration and physical shape as thenetwork node 20 can be stacked on the stack of FIG. 3A.

For the sake of the description, the Ethernet surface connectors (e.g.,210 a and 210 b) on the top and bottom surfaces of a network node arereferred to as an “A-type surface connector” and a “B-type surfaceconnector”, respectively.

However, the locations on which the Ethernet surface connectors areprovided are not limited to what are depicted in FIGS. 2A and 2C.Further, more details of the Ethernet surface connectors 210 a and 210 bare described with reference to FIGS. 2B and 2D, respectively.

Referring back to FIGS. 2A and 2C, the network node 20 may furtheroptional features such as a pair of power surface connectors 220 a and220 b and a pair of supporting members 230 a and 230 b. The powersurface connectors 220 a and 220 b may be provided on the top surfaceand the bottom surface thereof, respectively, which provides a powersupplying channel between the network nodes 20 and 20′ when the nodesare stacked on each other. In addition, the supporting members 230 a and230 b may be provided on the top surface and the bottom surface of thenetwork node 20, respectively. The supporting member 230 a may be formedin groove, and the supporting member 230 a may be formed in protrusion,or vice versa, so that the network node 20 is stacked on the networknode 20′, the pair of groove and protrusion structure 230 a and 230 bcan prevent the network nodes from moving in a lateral direction, so aphysical engagement between the nodes is further enhanced.

In addition, referring now to FIGS. 2B and 2D, the periphery 214 a ofthe A-type surface connector 210 a on the top surface of the networknode 20 is formed in groove while the periphery 214 b of the B-typesurface connector 210 b of the network node 20′ is formed in protrusion,or vice versa at the periphery. Further, the pins 211 a of the A-typesurface connector 210 a may be indented, and the pins 211 b of theB-type surface connector 210 b may be slightly elevated (or protruded)in a compressible manner, such as by spring pins (e.g., model numbers858-22-00X-10-0X1101, 858-22-00X-30-0X1101 and 858-22-00X-30-6X1101manufactured by Mill-Max Mfg. Corp.). Alternatively, this structure ofelevation and indentation can be reversed.

Thus, referring further to FIGS. 3A and 3B illustrating a sectional viewtaken along with A-A′ when the network nodes 20 and 20′ are stacked, theA-type surface connector 210 a and the B-type surface connector 210 bhave an opposite structure in a vertical direction D3.

For example, the periphery 214 b of the B-type surface connector 210 bon the bottom surface of the network node 20 is formed in protrusion,and the periphery 214 a of the A-type surface connector 210 a on the topsurface of the network node 20′ is formed in groove. Similarly, the pins214 b of the B-type surface connector 210 b on the bottom surface of thenetwork node 20 is formed in protrusion, and the pins 211 a of theA-type surface connector 210 a on the top surface of the network node20′ is formed in groove. Thus, when the network nodes 20 and 20′ arestacked, a physical mechanical mating between the network nodes 20 and20′ is enhanced.

Referring further to FIG. 3B, the supporting member 230 b on the bottomsurface of the network node 20 is formed in protrusion, and thesupporting member 230 a on the top surface of the network node 20′ isformed in groove, so that when the network nodes 20 and 20′ are stacked,a physical mechanical mating between the network nodes 20 and 20′ isfurther enhanced.

In one embodiment, referring back to FIGS. 2B and 2D, the Ethernetsurface connector 210 a may further include at least two bar magnets 212a and 213 a, and the N exposed pins 211 a may be flanked by the tops ofthe two bar magnets 212 a and 213 a disposed at opposite sides of the Npins 211 a. In this case, the Ethernet surface connector 210 b providedon the bottom of the network node 20 may have two bar magnets 212 b and213 b disposed at opposite sides of N pins 211 b of the Ethernet surfaceconnector 210 b, as shown in FIG. 2D, so that when the network node 20is stacked on the network node 20′, the Ethernet surface connector 210 bon the bottom surface of the network node 20 can mate with the Ethernetsurface connector 20′ on the top surface of the another network node(e.g., 20′) to enhance a physical engagement between the network nodes,preventing one from moving against another. However, the bar magnets areonly optional features, but they are not necessarily included in eachnetwork node.

In the A-type surface connector 210 a, the two magnets 212 a and 213 aare disposed to have opposite poles at the top surface of the networknode 20; for example, referring to FIG. 2B, the magnet 212 a is disposednorth-side-up and the magnet 213 a is disposed south-side-up at the topsurface of the network node 20. Further, in the B-type surface connector210 b provided on the bottom surface of the network node 20, the twomagnets are disposed to have opposite poles to each other at the bottomsurface of the network node 20, but each magnet of the bottom Ethernetsurface connector 210 b may have an opposite pole to a correspondingmagnet of the top Ethernet surface connector 210 a, so that when thenetwork node 20 is stacked on another network node having substantiallythe same configuration as the network node 20, the magnets will work toattract each other to ensure a proper mating between the stacked networknodes.

Although it is illustrated in FIGS. 2B and 2D that the shape of each barmagnet is of circular when viewed from the top, exemplary embodiments ofthe present disclosure are not limited thereto; for example, the shapein the top view can be of rectangular or any other arbitrary shape.

Referring back to FIGS. 2A and 2C, the power surface connectors 220 aand 220 b have substantially the same configuration and physical shapeexcept for an opposite vertical structure in terms of periphery andpower pins and/or in opposite magnetic poles of optional magnets, as dothe Ethernet surface connectors 210 a and 210 b. Duplicate descriptionthereof will be omitted for the sake of simplicity.

Referring back to FIG. 3A, the B-type surface connector 210 b of thenetwork node 20 can mate with the A-type surface connector 210 a of thenetwork node 20′ when the network nodes 20 and 20′ are stacked, so thata network connection between the two stacked network nodes can beestablished through the surface contact. In this manner, multiplenetwork nodes can be vertically stacked and the act of stacking suchnetwork nodes would enable an Ethernet connection between the networknodes, which allows the network nodes or servers included in the nodesto work in a collaborate manner for, e.g., big data processing. In otherwords, as can be further seen from FIG. 3A, when the two network nodes20 and 20′ are stacked, a connection is made between the B-type surfaceconnector 210 b on the bottom surface of the network node 20 and theA-type surface connector 210 a on the top surface of the network node20′. As the B-type surface connector 210 b on the bottom of the networknode 20 gets closer to contact the A-type surface connector 210 a on thetop of the network node 20′, the magnets facing in opposite poles willattract each other and engage the two connectors, so the pins will meeteach other properly and establish a good electric interface.

Although it is illustrated in the figures that N pins are arranged intwo rows, exemplary embodiments of the present disclosure are notlimited thereto. For example, another number of pins can be arranged ina single row, or any other arbitrary manner.

FIG. 4A depicts a block diagram of an example network node according toan exemplary embodiment of the present disclosure. FIG. 4B is a viewillustrating an example configuration of stacked multiple network nodesin communication with each other according to an exemplary embodiment ofthe present disclosure.

Referring now to FIG. 4A, the network node 40 includes a processor 420,a memory 442, a storage 444, an A-type surface connector 410 a, a B-typesurface connector 410 b, a communication unit 460, a typical Ethernetconnection port 450, a switch unit (circuit) 430, and a chassisincorporating the aforementioned elements. Although it is illustrated infigures that a single line is used to show a connection betweenelements, the line does not necessarily represent a physical singleconnection, but can be more than one connection. The Ethernet connectionport 450 can be an RJ45 port, which is for example, provided in a rearside of a network node, as shown in FIG. 2E. Further, a power connectionport 490 may be disposed in the rear side of the network node.

The switch unit 430 is configured to switch connections between theconnectors 410 a and 410 b, the communication unit 460, and the RJ45port 450 based on a control by the processor 420 or another processorlocated in another network node or in a remote site. The processor 420is configured to receive, process (calculate) and transmit various datafrom/to other elements such as the memory 442, the storage 444, theswitch unit 430, the communication unit 460 and control the elementsunder program codes stored in the memory 442 or the storage 444.

For example, when the RJ45 port 450 is connected to an external computernetwork (e.g., Ethernet network), the switch unit 430 is controlled tomake a connection between the RJ45 port 450 and the communication unit460, so that the network node 40 can communicate with the externalnetwork via the RJ45 port 450.

In a further example, as shown in FIG. 4B, where three network nodes40_1 to 40_3 each having substantially the same configuration as thenetwork node 40 of FIG. 4A are stacked on each other, the network node40_3 is positioned on the bottom of the stack and connected to the wiredEthernet connection 470 (e.g., Ethernet connection plug) via the RJ45port 450_3, the network node 40_2 is stacked on the network node 403,and the network node 40_1 is stacked on the network node 40_2. Thenetwork nodes 40_1 to 40-3 are in surface-contact with each other.Details of connections between the elements are omitted in FIG. 4B forthe sake of simplicity.

This configuration allows the whole stack including the network nodes40_1 to 40_3 to receive a wired Ethernet connection 470 through the RJ45port 450_3, directly or indirectly.

Referring still to FIG. 4B, although all of the network nodes 401 to 403within the stack may include an RJ45 port, it is conceivable that onlyone network node (e.g., 40_3) receives a wired Ethernet connectionthrough an RJ45 port (e.g., 450_3) incorporated in that network node(e.g., 40_3) and then the Ethernet connection may be passed from node tonode by the Ethernet surface connectors. For example, the Ethernetconnection is received by the network node 40_3, passed to the networknode 40_2 through a surface contact between the surface connectors 410a_3 and 410 b_2, and then passed to the network node 40_1 through asurface contact between the surface connectors 410 a_2 and 410 b_1. Inother words, even though only the single network node (e.g., 40_3)receives a wired Ethernet connection 470, all of the three network nodescan be connected to the network. The top two network nodes 40_1 and 40_2will receive the connection through the Ethernet surface connectorsrather than through the direct wired Ethernet connection.

To this end, in one embodiment, the switch unit 430_3 of the networknode 40_3 is configured to establish a connection between the RJ45 port450_3 and the communication unit 460_3 and a connection(s) (e.g.,between the RJ45 port 450_3 and the surface connector 410 a_3) forpassing the Ethernet connection to the network node 40_2. Further, uponreceiving the Ethernet connection from the network node 20_3, the switchunit 430_2 of the network node 40_2 is configured to establish aconnection between the surface connector 410 b_2 and the communicationunit 460_2 and a connection(s) (e.g., between the surface connector 410b_2 and the surface connector 410 a_2) for passing the Ethernetconnection to the network node 40_1.

It is also conceivable that the network node to be connected to thewired Ethernet network can be any of the stacked nodes.

Although it is illustrated and described with reference to the figuresthat only two or three network nodes are stacked on each other,exemplary embodiments of the present disclosure are not limited thereto.

In addition, it is also conceivable that only one network node (e.g.,40_3) receives power through a power connection port (e.g., 490 of FIG.2E) incorporated in that network node (e.g., 40_3) and then the powerconnection may be passed from node to node by the power surfaceconnectors (e.g., 220 a and 220 b of FIGS. 2A and 2B). In other words,even though only the single network node (e.g., 40_3) receives a powerconnection, all of the three network nodes can be supplied with power.The top two network nodes 40_1 and 40_2 will be supplied with powerthrough the power surface connectors.

In addition, in some embodiments with respect to FIGS. 4A and 4B, eachnetwork node includes a modified Ethernet connection port (not shown)(e.g., modified RJ45 port) in addition to the typical RJ45 port 450,450_1, 450_2, or 450_3, or as a replacement to the typical RJ45 port.

The modified RJ45 port may have substantially the same physical shape asthe typical RJ 45 port, so that it can be compatible with both of thetypical RJ45 plug and a modified RJ45 plug so as to ensure aconventional connector-in-jack Ethernet connection.

FIG. 5A depicts a block diagram of an example network node according toan exemplary embodiment of the present disclosure. FIG. 4B is a viewillustrating an example configuration of stacked multiple network nodesin communication with each other according to an exemplary embodiment ofthe present disclosure.

Referring now to FIG. 5A, the network node 50 includes a processor 520,a memory 542, a storage 544, an A-type surface connector 510 a, a B-typesurface connector 510 b, a communication unit 560, a switch unit(circuit) 530, and a chassis incorporating the aforementioned elements.Although it is illustrated in figures that a single line is used to showa connection between elements, the line does not necessarily represent aphysical single connection, but can be more than one connection. Thenetwork node 50 has substantially the same configuration as the networknode 40 except that it does not include a RJ45 port. Thus, duplicatedescription thereof will be omitted for the sake of simplicity.

The switch unit 530 is configured to switch connections between theconnectors 510 a and 510 b and the communication unit 560 based on acontrol by the processor 520 or another processor located in anthernetwork node or in a remote site.

Referring further to FIG. 5B, when the multiple network nodes 50_1 to50_3 each having substantially the same configuration as the networknode 50 of FIG. 5A are stacked one on another, since each network nodemay not include any extra Ethernet connection port such as a typicalRJ45 port, a modified RJ45 port, etc., the stack of the network nodes isconnected to the wired Ethernet network by an Ethernet surfaceconnection. In one aspect, the wired Ethernet connection 560 is made tothe top network node 50_1 of the stack, as depicted in FIG. 5B. However,in another aspect, the wired Ethernet connection is made to the bottomnetwork node 50_3 of the stack (not shown).

Referring still to FIG. 5B, a wiring portion 550 can be used forengaging the stack (e.g., the top network node 50_1) to the wiredEthernet connection 560. The wiring portion 550 includes customized(connection) wirings adapted to mate with pin arrangement of theEthernet surface connector (e.g., 510 a of FIG. 5B) through which thewired connection 560 is made. Since the wiring portion 550 is connectedto the stack by the surface contact, it does not need to fit into atypical RJ45 port, and thus, the end surface of the wiring portion 550facing the Ethernet surface connector may be substantially flat. Inaddition, the wiring portion 550 might not have a locking clip, but mayhave magnets disposed in such a manner that each has an opposite pole toa corresponding magnet to which it faces to contact, similar to what isdescribed with respect to the magnet arrangement of the Ethernet surfaceconnectors 210 a and 210 b of FIG. 3A.

In one aspect, the wiring portion 550 may be provided as a surfacecontact plug appearing on one end of a cable connected to the network.This plug type wiring portion can be connected to either the A-typesurface connector 510 a of the top network node 50_1, as depicted inFIG. 5B, or the B-type surface connector of the bottom network node50_3.

In another aspect, the wiring portion 550 may be provided in a cap unitto cover a chassis of the top network node 50_1, or a base unit to covera chassis of the bottom network node 50_3.

FIG. 6A is a view illustrating multiple network nodes stacked where acap unit is used to cover a top network node according to an exemplaryembodiment of the present disclosure. FIG. 6B is a view illustratingmultiple network nodes stacked where a base unit is used to cover abottom network node according to an exemplary embodiment of the presentdisclosure.

Referring to FIG. 6A, the cap unit 50 a is preferably sized to cover thechassis of the top network node 50_1. The cap unit 50 a itself isconnected or connectable to the network through the wired Ethernetconnection 620 or any other wired or wireless connections.

Similarly, referring to FIG. 6B, the base unit 50 b is preferably sizedto cover the chassis of the bottom network node 50_3. The base unit 50 bitself is connected or connectable to the network through the wiredEthernet connection or any other wired or wireless connections.

By way of examples only, the wiring portion 550 of FIG. 5B may beprovided to have a B-type surface connector so as to mate with theA-type surface connector of the top network node 50_1, the wiringportion 610 a of FIG. 6A may be provided to have a B-type surfaceconnector so as to mate with the A-type surface connector of the topnetwork node 50_1, and the wiring portion 610 b of FIG. 6B may beprovided to have an A-type surface connector so as to mate with theB-type surface connector of the bottom network node 50_3.

FIG. 7 is a view illustrating an example modified RJ45 plug according toan exemplary embodiment of the present disclosure.

Referring to FIG. 7, the modified RJ45 plug 700 includes two magnets 710and 720 disposed at opposite ends of the array of pins 740 so as tosecure a proper mating when it faces the modified RJ45 port or othersurface connectors whose the magnets are arranged in an opposite mannerto the modified RJ45 plug 700 (e.g., N-pole magnet of the modified RJ45plug 700 faces S-pole magnet of the modified RJ port, or vice versa).For example, each magnet 710 and 720 may be formed in a bar shape. Theuse of the magnets 710 and 720 allows the modified RJ45 plug 700 and themodified RJ45 port to establish an Ethernet surface connection.

In one embodiment, the stack of network nodes of FIG. 4B or FIG. 6B maybe rack-mounted. In both cases, the wired Ethernet connection may easilybe made to either the top or bottom chassis of the stack. For example,the rackmount can be provided such that at least a portion of thechassis of one network node is held in contact with another so as toallow for the Ethernet surface connection.

Referring back to FIG. 7, the modified RJ45 plug 700 may optionallyinclude a locking clip 730 so as to allow it to be connected to thetypical RJ45 port, so that backwards compatibility between the typicalEthernet connection and the surface Ethernet connection is ensured.

FIG. 8 is an exploded view illustrating two example modified RJ45 plugs700 a and 700 b being connected by the surface contact according to anexemplary embodiment of the present disclosure.

Referring to FIG. 8, by virtue of each modified RJ45 plugs 700 a and 700b including bar magnets (e.g., 710 and 720), the modified RJ45 plugs canserve as Ethernet surface connectors, so that when they are disposed intandem, as shown in FIG. 8, an Ethernet connection can be made fromcable to cable. The modified RJ45 plugs may be easily engaged with oneanother to establish the Ethernet connection.

Referring further to FIG. 8, the manner in which each pin is springloaded is shown and the proximity of the cylindrical bar magnets is alsoshown in. As only the circular tops of the cylindrical bar magnets areexposed, backwards compatibility with the typical RJ45 connectors may bemaintained.

FIG. 9 depicts an example data processing system using network cells(nodes) according to an exemplary embodiment of the present disclosure.FIG. 10 is a view of an example system configuration 1000 according toan exemplary embodiment of the present disclosure. FIGS. 11, 12A-12D and13A-13E depict flow charts of a method for updating the data processingsystem with new system configuration or new cell image according to anexemplary embodiment of the present disclosure.

Referring to FIG. 9, the data processing system includes a managementsystem (or management node) 910, a builder cell 920, and one or moreworker cells 930 a and 930 b. The management system 910 provides amanagement function allows a user to set up or make changes to theconfiguration of cells in the data processing system. The builder cell920 can serve as a master node that manages or control operations of theworker cells 930 a and 930 b. The worker cells may collaboratively workto perform the data mining, the big data analytic, or the like accordingto the control by the builder cell 920. Although only two worker cellsare illustrated in FIG. 9, exemplary embodiments of the presentdisclosure are not limited thereto.

The builder cell 920 and/or the worker cells 930 a and 930 b each maycorrespond to one of the network nodes 20, 20′, 40, 40_1 to 40_3, 50,50_1 to 50_3 of FIGS. 2A-2E, 3A-3B, 4A-4B, 5A-5B and 6A-6B or havesubstantially the same configuration as one of those network nodes ofFIGS. 2A-2E, 3A-3B, 4A-4B, 5A-5B and 6A-6B. Further, it is conceivedthat at least two or more of the builder cell 920 and/or the workercells 930 a and 930 b are stacked one on another, while being incommunication one with another through surface-contacts as describedwith reference to FIGS. 2A-2E, 3A-3B, 4A-4B, 5A-5B and 6A-6B. In a moreparticular example, the builder cell (e.g., 920) can be considered as anetwork node (e.g., 40_1 of FIG. 4B) which receives a wired Ethernetconnection and passes the Ethernet connection to other work cells (e.g.,930 a and 930 b) which can be considered as network nodes (e.g., 40_2and 40_3 of FIG. 4B) stacked on the network node (e.g., 40_1).

The management system 910 includes one or more processors 911, memory912 coupled to the processors, a storage 913, a communication unit 914,a communication connector 915, etc.

The builder cell 920 includes one or more processors 921, memory 922coupled to the processors, a storage 923, a communication unit 924, acommunication connector 925, etc.

Each worker cell 930 a (or 930 b) includes one or more processors 931 a(or 931 b), memory 932 a (or 932 b) coupled to the processors, a storage933 a (or 933 b), a communication unit 934 a (or 934 b), a communicationconnector 935 a (or 935 b), etc.

The management system 910 may further include a user interface (notshown) for receiving an input from a user with respect to the update ofthe system configuration or a new cell image.

Referring to FIG. 10, the system configuration 1000 includes one or morecell configurations 1100 and one or more framework configurations 1200.

The cell configuration 1100 is in association with each physical stackconsisting of physically connected network cells, so the cellconfiguration 1100 may define physical interfaces and interactions amongthe cells in each stack and/or among stacks, which allows the stack(s)communicate, report and detect various hardware, irrespective ofapplications running on any individual cell(s).

Further, the framework configuration 1200 is in association with eachlogical cluster for a specific workload application framework associatedwith individual cells, so the framework configuration 1200 may defineframeworks with which individual cells are associated. Each stack maycontain a homogeneous framework or heterogeneous frameworks. By way ofexample only, if there are a physical stack of 8 cells that are allrunning a Spark cluster architecture for data processing and anotherphysical stack of 8 units that are running Hadoop cluster, a userdecides to create a logical cluster, for example, Kubernetes cluster, byusing two cells from the Spark stack and two cells from the Hadoopstack. Here, the logical cluster is distinguished from a physical stacksince the 4 cells of the logical cluster are based on cells from twoseparate physical stacks. This may leave one stack to have 6 cellsrunning Spark and 2 cells running Kubernetes and another stack to have 6cells running Hadoop and 2 cells running Kubernetes.

Referring to FIGS. 11 and 12A-12D, the method for updating the systemconfiguration or the new cell image starts with step S110 where a userupdates the system configuration (e.g., 1000) through the managementsystem (e.g., 910). The user may communicate through a wired or wirelessconnection with the management system.

Next, the management system stores the system configuration into astorage (e.g., 913) (S120).

In step S130, the management system notifies to the builder cell (e.g.,920) through a communication unit (e.g., 914) that the new systemconfiguration is available. If the management system is locallyconnected to the builder cell, the above notification can be made via alocal connection.

Referring further to FIG. 12A, the builder cell connects to themanagement system, downloads the new system configuration therefrom, andstores the same into a storage (e.g., 923) (S210), and parses andverifies the new system configuration (S220). For example, the verifyingof the new system configuration in S220 may include determine whetherthe new system configuration is different from a previous systemconfiguration. If it is determined that the new system configuration isdifferent from the previous one (YES), the method goes to step S230where the builder cell determines whether the new system configurationspecifies a new cell image; otherwise (NO), the method ends.

The new cell image may include information in regard to theconfiguration of the physical connection (e.g., cell configuration 1100)of a stack which the builder cell and the worker cell(s) constitute andthe configuration of the desired framework (e.g., frameworkconfiguration 1200). By way of example only, if there was given a stackof 8 cells all running Spark previously and the new cell image indicatesthat two of the cells have been reallocated to run Hadoop, the newframework configuration 1200 to the two cells reallocated to run Hadoopwould be generated and provided as part of the new cell image.

If it is determined that the new system configuration specifies a newcell image (YES), the builder cell connects to the management system,downloads the new cell image therefrom, and stores the same into thestorage (e.g., 923) (S240); otherwise (NO), the method goes to step S320of FIG. 12B.

Next to the step S240, it is determined whether the new cell image isdownloaded successfully in S250. If the new cell image is downloadedsuccessfully (YES), the method goes to the step S310 of FIG. 12B wherethe builder cell 920 replaces an old cell image with the new cell image;otherwise (NO), the method goes to S610 a of FIG. 13A where the buildercell retries the downloading of the new cell image. Referring further toFIG. 13A, if a retry limit is not reached in step S620 a (NO), themethod goes to S240 of FIG. 12A; otherwise (YES), the builder celldetermines that the download fails and optionally performs an advancedrecovery action (S630 a).

In one embodiment, in the advanced recovery action S630 a, the methodmay return to a “Known good state” if the last state of the stack isstill functioning properly and it leaves it as is. However, if thesystem is in an unknown or indeterminate state, the recovery will be toreboot to a built in “factory reset” state and attempt to redownload thecell configuration. This accounts for systems that are behind a firewalland not allowed access to the network or systems that have had amalfunction and cannot recover therefrom.

Next to the step S310, the builder cell parses a new cell configurationand/or a new framework configuration from the system configuration(S320) and replaces an old cell configuration and/or a frameworkconfiguration with the new cell configuration and/or the new frameworkconfiguration (S330).

Next, in step S340, the builder cell advertises to the worker cells(e.g., 930 a or 930 b) that the new system configuration is availableand ends provisioning process of the builder cell.

Referring further to FIGS. 12C and 12D illustrating local provisioningof each worker cell, the method starts with each worker cell receives anotice from the builder cell 920 that the new system configuration isavailable (S410). The worker cell connects to the builder cell,downloads the new system configuration therefrom, and store the sameinto a storage (e.g., 933 a or 933 b) (S420).

Next, in step S430, the worker cell parses and verifies the new systemconfiguration. For example, the verifying of the new systemconfiguration in S430 may include determine whether the new systemconfiguration is different from a previous system configuration. If itis determined that the new system configuration is different from theprevious one (YES), the method goes to step S440 where the worker celldetermines whether the new system configuration specifies a new cellimage; otherwise (NO), the method ends.

In addition, if it is determined that the new system configurationspecifies a new cell image (YES), each worker cell connects to thebuilder cell, downloads the new cell image therefrom, and stores thesame into the storage (e.g., 933 a or 933 b) (S450); otherwise (NO), themethod goes to step S530 of FIG. 12D.

Next to the step S450, it is determined whether the new cell image isdownloaded successfully in S460. If the new cell image is downloadedsuccessfully (YES), the method goes to the step S510 of FIG. 12D wherethe worker cell reimages a storage (e.g., 933 a or 933 b of FIG. 9) withthe new cell image; otherwise (NO), the method goes to S610 b of FIG.13B where the worker cell retries downloading the new cell image.Referring further to FIG. 13B, if a retry limit is not reached in stepS620 b (NO), the method goes to S450 of FIG. 12C; otherwise (YES), theworker cell determines that the download fails and optionally performsan advanced recovery action (S630 b).

In one embodiment, in the advanced recovery action S630 b, the methodmay return to a “Known good state” if the last state of the stack isstill functioning properly and it leaves it as is. However, if thesystem is in an unknown or indeterminate state, the recovery will be toreboot to a built in “factory reset” state and attempt to redownload thecell configuration. This accounts for systems that are behind a firewalland not allowed access to the network or systems that have had amalfunction and cannot recover therefrom.

Referring now to FIG. 12D, next to the step S510, it is determined thatthe reimage using the new cell image is successfully applied to thestorage (e.g., 933 a or 933 b) (S520). If the reimage is successfullyapplied (YES), the method goes to step S530 where the worker cellapplies the new cell configuration; otherwise, the method goes to S610 cof FIG. 13C where the worker cell retries the reimaging. Referringfurther to FIG. 13C, if a retry limit is not reached in step S620 c(NO), the method goes to S510 of FIG. 12D; otherwise (YES), the workercell determines that the reimage fails and optionally performs anadvanced recovery action (S630 c).

In one embodiment, in the advanced recovery action S630 c, the methodmay return to a “Known good state” if the last state of the stack isstill functioning properly and it leaves it as is. However, if thesystem is in an unknown or indeterminate state, the recovery will be toreboot to a built in “factory reset” state and attempt to redownload thecell configuration. This accounts for systems that are behind a firewalland not allowed access to the network or systems that have had amalfunction and cannot recover therefrom.

In addition, in step S540, it is determined that the cell configurationis successfully applied. If the cell configuration is successfullyapplied (YES), the method goes to step S550 where the worker cellapplies the framework configuration; otherwise, the method goes to S610d of FIG. 13D where the worker cell retries applying the cellconfiguration. Referring further to FIG. 13D, if a retry limit is notreached in step S620 d (NO), the method goes to S530 of FIG. 12D;otherwise (YES), the worker cell determines that the applying of the newcell configuration fails and optionally performs an advanced recoveryaction (S630 d).

In one embodiment, in the advanced recovery action S630 d, the methodmay return to a “Known good state” if the last state of the stack isstill functioning properly and it leaves it as is. However, if thesystem is in an unknown or indeterminate state, the recovery will be toreboot to a built in “factory reset” state and attempt to redownload thecell configuration. This accounts for systems that are behind a firewalland not allowed access to the network or systems that have had amalfunction and cannot recover therefrom.

In addition, in step S560, it is determined that the frameworkconfiguration is successfully applied. If the framework configuration issuccessfully applied (YES), the method successfully ends; otherwise, themethod goes to S610 e of FIG. 13E where the worker cell retries applyingthe framework configuration. Referring further to FIG. 13E, if a retrylimit is not reached in step S620 e (NO), the method goes to S550 ofFIG. 12D; otherwise (YES), the worker cell determines that the downloadfails and optionally performs an advanced recovery action (S630 e).

In one embodiment, in the advanced recovery action S630 e, the methodmay return to a “Known good state” if the last state of the stack isstill functioning properly and it leaves it as is. However, if thesystem is in an unknown or indeterminate state, the recovery will be toreboot to a built in “factory reset” state and attempt to redownload thecell configuration. This accounts for systems that are behind a firewalland not allowed access to the network or systems that have had amalfunction and cannot recover therefrom.

FIGS. 14A and 14B depict flow charts of a method for reimaging (orrepurpose) a local cell worker cell according to an exemplary embodimentof the present disclosure.

The flow charts shown in FIGS. 14A and 14B and related descriptionsbelow can be considered as an example embodiment to perform the stepS510 of FIG. 12D.

Referring to FIG. 14A, the method for reimaging each local cell canmainly be into three key sections with respect to user/user interface(UI) actions, local cell (e.g., a worker cell)'s automated actions to bebooted to SDA1 (e.g., the first partition of the first hard disk drive),and the local cell's automated actions to be booted to eMMC (EmbeddedMultiMedia Card). For example, the local cell can be a worker cell(e.g., 930 a or 930 b of FIG. 9) or a builder cell (e.g., 920 of FIG.9).

Regarding the user/UI actions, referring to FIG. 14A, a user clicks arepurpose button on user interface (UI) (S810) and selects a FRAMEWORKfrom the repurpose menu (S820). For example, the UI can be implementedin the management system (e.g., 910 of FIG. 9) or implemented directlyin each local cell, and the framework can be either ‘Spark’ or‘Cassandra’. Next, the user clicks a confirmation button in aconfirmation box of the UI (S830). In step S840, the UI back-endinvolves a reimage script (e.g., reimage_<FRAMEWORK>.sh) on each localcell.

In addition, regarding the local cell's automated actions to be bootedto SDA1, referring further to FIG. 14A, the reimage script clears outany leftover cookies from SDA2 (e.g., the second partition of the firsthard disk drive) (S850) and sets a reimage cookie (e.g.,reimage_<FRAMEWORK>) on SDA2 (S860). Next, the reimage script resets aconfiguration file (e.g., extlinux.conf) on eMMC to boot to eMMC (S870)and issues a reboot command (S880).

In addition, regarding the local cell's automated actions to be bootedto eMMC, referring now to FIG. 14B, the local cell reboots to eMMC(S890) and a service (e.g., reimage_onBoot) runs automatically duringboot (S910). Further, the service (e.g., reimage_onBoot) calls a reimageboot script (e.g., reimage_onBoot.sh) (S920). Next, the reimage bootscript checks a reimage cookie (e.g., reimage_<FRAMEWORK> on SDA2(S930). If the reimage cookie indicates ‘Spark’, the reimage boot script(e.g., reimage_onBoot.sh) runs an FSArchiver to extract Spark image toSDA1 (S940). If the reimage cookie indicates ‘Cassandra’, the reimageboot script (e.g., reimage_onBoot.sh) runs an FSArchiver to extractCassandra image to SDA1 (S950). Next, the reimage boot script (e.g.,reimage_onBoot.sh) deletes the reimage cookie (e.g.,reimage_<FRAMEWORK>) from SDA2 (S960), resets a configuration file(e.g., extlinux.conf) on eMMC to boot to SDA1 (S970), and issues areboot command (S980).

In addition, as part of the local cell's automated actions to be bootedto SDA1, the local cell reboots to SDA1 with newly installed framework(S990).

By way of example only, the data processing system of FIG. 9 can be astand-alone server cluster including one or more cells (e.g., 920, 930 aand 930 b). The system has an initial state in which it boots up.Preloaded cells will go through the initial bootup sequence to determineif a user-defined configuration is loaded and then choose that as theirstartup path. As the cells are stacked, they have a protocol that allowsthem to identify, validate and configure based on a user managedconfiguration. The ability to reconfigure the cells is managed throughan interface (e.g., user interface) that allows the user to selectpre-packaged frameworks or use their own created frameworks. This isdifferent than standard plug and play peripheral devices in that theperipheral device is not a stand-alone device. The plug and playperipheral devices have standard drivers downloaded and installed from amain computer to which they are coupled. The main computer may have therequired drivers for each peripheral device or control all mechanisms tohave the corresponding drivers automatically retrieved and downloaded tothe peripheral devices, so that the user does not have to manuallyinstall them in order to use the peripheral devices.

FIG. 15 is a block diagram of a computing system 4000 according to anexemplary embodiment of the present disclosure.

Referring to FIG. 15, the computing system 4000 may be used as aplatform for performing: the functions or operations describedhereinabove with respect to at least one of the network node (or cells)20, 20′, 40, 40_1 to 40_3, 50, 50_1 to 503, 910, 920, 930 a and 930 b ofFIGS. 2A-2E, 3A-3B, 4A-4B, 5A-5B, 6A-6B and 9; and the methods describedwith reference to FIGS. 11, 12A-12D, 13A-13E and 14A-14B.

Referring to FIG. 15, the computing system 4000 may include a processor4010, I/O devices 4020, a memory system 4030, a display device 4040,and/or a network adaptor 4050.

The processor 4010 may drive the I/O devices 4020, the memory system4030, the display device 4040, and/or the network adaptor 4050 through abus 4060.

The computing system 4000 may include a program module for performing:the functions or operations described hereinabove with respect to atleast one of the network node (or cells) 20, 20′, 40, 40_1 to 40_3, 50,50_1 to 50_3, 910, 920, 930 a and 930 b of FIGS. 2A-2E, 3A-3B, 4A-4B,5A-5B, 6A-6B and 9; and the methods described with reference to FIGS.11, 12A-12D, 13A-13E and 14A-14B. For example, the program module mayinclude routines, programs, objects, components, logic, data structures,or the like, for performing particular tasks or implement particularabstract data types. The processor (e.g., 4010) of the computing system4000 may execute instructions written in the program module to perform:the functions or operations described hereinabove with respect to atleast one of the network node (or cells) 20, 20′, 40, 40_1 to 40_3, 50,50_1 to 50_3, 910, 920, 930 a and 930 b of FIGS. 2A-2E, 3A-3B, 4A-4B,5A-5B, 6A-6B and 9; and the methods described with reference to FIGS.11, 12A-12D, 13A-13E and 14A-14B. The program module may be programmedinto the integrated circuits of the processor (e.g., 4010). In anexemplary embodiment, the program module may be stored in the memorysystem (e.g., 4030) or in a remote computer system storage media.

The computing system 4000 may include a variety of computing systemreadable media. Such media may be any available media that is accessibleby the computer system (e.g., 4000), and it may include both volatileand non-volatile media, removable and non-removable media.

The memory system (e.g., 4030) can include computer system readablemedia in the form of volatile memory, such as RAM and/or cache memory orothers. The computer system (e.g., 4000) may further include otherremovable/non-removable, volatile/non-volatile computer system storagemedia.

The computer system (e.g., 4000) may communicate with one or moredevices using the network adapter (e.g., 4050). The network adapter maysupport wired communications based on Internet, local area network(LAN), wide area network (WAN), or the like, or wireless communicationsbased on code division multiple access (CDMA), global system for mobilecommunication (GSM), wideband CDMA, CDMA-2000, time division multipleaccess (TDMA), long term evolution (LTE), wireless LAN, Bluetooth, ZigBee, or the like.

Exemplary embodiments of the present disclosure may include a system, amethod, and/or a non-transitory computer readable storage medium. Thenon-transitory computer readable storage medium (e.g., the memory system4030) has computer readable program instructions thereon for causing aprocessor to carry out aspects of the present disclosure.

The computer readable storage medium can be a tangible device that canretain and store instructions for use by an instruction executiondevice. The computer readable storage medium may be, for example, butnot limited to, an electronic storage device, a magnetic storage device,an optical storage device, an electromagnetic storage device, asemiconductor storage device, or any suitable combination of theforegoing. A non-exhaustive list of more specific examples of thecomputer readable storage medium includes the following: a portablecomputer diskette, a hard disk, a random access memory (RAM), aread-only memory (ROM), an erasable programmable read-only memory(EEPROM or Flash memory), a static random access memory (SRAM), aportable compact disc read-only memory (CD-ROM), a digital versatiledisk (DVD), a memory stick, a floppy disk, or the like, a mechanicallyencoded device such as punch-cards or raised structures in a groovehaving instructions recorded thereon, and any suitable combination ofthe foregoing. A computer readable storage medium, as used herein, isnot to be construed as being transitory signals per se, such as radiowaves or other freely propagating electromagnetic waves, electromagneticwaves propagating through a waveguide or other transmission media (e.g.,light pulses passing through a fiber-optic cable), or electrical signalstransmitted through a wire.

Computer readable program instructions described herein can bedownloaded to the computing system 4000 from the computer readablestorage medium or to an external computer or external storage device viaa network (e.g., computer network). The network may include coppertransmission cables, optical transmission fibers, wireless transmission,routers, firewalls, switches, gateway computers and/or edge servers. Anetwork adapter card (e.g., 4050) or network interface in eachcomputing/processing device receives computer readable programinstructions from the network and forwards the computer readable programinstructions for storage in a computer readable storage medium withinthe computing system.

Computer readable program instructions for carrying out operations ofthe present disclosure may be assembler instructions,instruction-set-architecture (ISA) instructions, machine instructions,machine dependent instructions, microcode, firmware instructions,state-setting data, or either source code or object code written in anycombination of one or more programming languages, including an objectoriented programming language such as Smalltalk, C++ or the like, andconventional procedural programming languages, such as the “C”programming language or similar programming languages. The computerreadable program instructions may execute entirely on the user'scomputer, partly on the user's computer, as a stand-alone softwarepackage, partly on the user's computer and partly on a remote computeror entirely on the remote computer or server. In the latter scenario,the remote computer may be connected to the computing system (e.g.,4000) through any type of network, including a LAN or a WAN, or theconnection may be made to an external computer (for example, through theInternet using an Internet Service Provider). In an exemplaryembodiment, electronic circuitry including, for example, programmablelogic circuitry, field-programmable gate arrays (FPGA), or programmablelogic arrays (PLA) may execute the computer readable programinstructions by utilizing state information of the computer readableprogram instructions to personalize the electronic circuitry, in orderto perform aspects of the present disclosure.

Aspects of the present disclosure are described herein with reference toflowchart illustrations and/or block diagrams of methods, system (ordevice), and computer program products (or computer readable medium). Itwill be understood that each block of the flowchart illustrations and/orblock diagrams, and combinations of blocks in the flowchartillustrations and/or block diagrams, can be implemented by computerreadable program instructions.

These computer readable program instructions may be provided to aprocessor of a general-purpose computer, special purpose computer, orother programmable data processing apparatus to produce a machine, suchthat the instructions, which execute via the processor of the computeror other programmable data processing apparatus, create means forimplementing the functions/acts specified in the flowchart and/or blockdiagram block or blocks. These computer readable program instructionsmay also be stored in a computer readable storage medium that can directa computer, a programmable data processing apparatus, and/or otherdevices to function in a particular manner, such that the computerreadable storage medium having instructions stored therein comprises anarticle of manufacture including instructions which implement aspects ofthe function/act specified in the flowchart and/or block diagram blockor blocks.

The computer readable program instructions may also be loaded onto acomputer, other programmable data processing apparatus, or other deviceto cause a series of operational steps to be performed on the computer,other programmable apparatus or other device to produce a computerimplemented process, such that the instructions which execute on thecomputer, other programmable apparatus, or other device implement thefunctions/acts specified in the flowchart and/or block diagram block orblocks.

The flowchart and block diagrams in the Figures illustrate thearchitecture, functionality, and operation of possible implementationsof systems, methods, and computer program products according to variousembodiments of the present disclosure. In this regard, each block in theflowchart or block diagrams may represent a module, segment, or portionof instructions, which comprises one or more executable instructions forimplementing the specified logical function(s). In some alternativeimplementations, the functions noted in the block may occur out of theorder noted in the figures. For example, two blocks shown in successionmay, in fact, be executed substantially concurrently, or the blocks maysometimes be executed in the reverse order, depending upon thefunctionality involved. It will also be noted that each block of theblock diagrams and/or flowchart illustration, and combinations of blocksin the block diagrams and/or flowchart illustration, can be implementedby special purpose hardware-based systems that perform the specifiedfunctions or acts or carry out combinations of special purpose hardwareand computer instructions.

The corresponding structures, materials, acts, and equivalents of allmeans or step plus function elements, if any, in the claims below areintended to include any structure, material, or act for performing thefunction in combination with other claimed elements as specificallyclaimed. The description of the present disclosure has been presentedfor purposes of illustration and description but is not intended to beexhaustive or limited to the present disclosure in the form disclosed.Many modifications and variations will be apparent to those of ordinaryskill in the art without departing from the scope and spirit of thepresent disclosure. The embodiment was chosen and described in order tobest explain the principles of the present disclosure and the practicalapplication, and to enable others of ordinary skill in the art tounderstand the present disclosure for various embodiments with variousmodifications as are suited to the particular use contemplated.

While the present invention has been particularly shown and describedwith respect to preferred embodiments thereof; it will be understood bythose skilled in the art that the foregoing and other changes in formsand details may be made without departing from the spirit and scope ofthe present invention. It is therefore intended that the presentinvention not be limited to the exact forms and details described andillustrated but fall within the scope of the appended claims.

1. A first network node, comprising: a chassis having a first surfaceand a second surface; a computing device positioned in the chassis; afirst surface connector configured to provide a first electricalconnection for at least one of data or power, the first surfaceconnector positioned on the first surface of the chassis; and a secondsurface connector configured to provide a second electrical connectionfor at least one of data or power, the second surface connectorpositioned on the second surface of the chassis, wherein the firstnetwork node is in electrical communication with a second network nodestacked vertically above or vertically below and in contact with thefirst network node via the first surface connector or the second surfaceconnector of the first network node and a corresponding surfaceconnector positioned on the second network node.